1. Technical Field
The invention relates in general to data processing systems and to computer systems and computer displays that include data display regions which display portions of a stored date file such as a compound document. In particular, the invention relates to a graphical user interface for retrieving an object within a compound document. More particularly, the invention relates to a graphical user interface for directing a data processing system to retrieve specific types of objects in a compound document.
2. Description of the Related Art
A graphical user interface is a type of display format that enables a user to choose commands, start programs, and see lists of files and other options by pointing to pictorial representations (icons) and lists of menu items on the screen. Choices can generally be activated by either a keyboard or a mouse.
For application developers, graphical user interfaces offer environments that handle direct interaction with the computer. Such environments free the developer to concentrate on a given application without becoming entangled in the details of a screen display or mouse and keyboard input. A graphical user interface also enables programmers to create programs to handle frequently performed tasks, such as saving a data file. The interface itself provides standard controlling mechanisms such as windows and dialog boxes. Another benefit of graphical user interfaces is that applications written for graphical user interfaces are device independent: as the graphical user interface changes to support new input and output devices, such as a large screen monitor or an optical storage device, the applications can, without modification, use those devices.
Some conventional graphical user interfaces provide a scroll bar for scrolling through pages of a document. In many types of graphical user interfaces, a vertical or horizontal bar at the side or bottom of a graphical user interface window can be utilized in conjunction with a pointing device (e.g., a mouse) for moving about in a compound document. Scrolling permits viewing of any desired portion of a document and is so named because it is the electronic equivalent of reading through a rolled (scrolled) document rather than flipping through pages of a book. A computer keyboard provides a number of "scroll-control" keys, such as the up, down, left, and right arrow keys. Application programs often offer additional methods of scrolling--for example, combing the "control" and "page up" keys to move to the beginning of a document.
Scroll bars typically are utilized in graphical user interfaces to accomplish scrolling tasks. A vertical or horizontal bar at the side or bottom of a window that can be used with a mouse for moving around in a document can be utilized in a typical scrolling task. For example, software word processing programs commercially available typically use two scroll bars for scrolling through pages of a document. Typically, a vertical scroll bar is used to control movement or to scroll through lines and pages of a document, while a horizontal scroll bar controls movement through words in a line.
Such conventional scroll bar systems usually comprise two arrows and a slider. Each arrow controls which direction a user desires to scroll through a document. An arrow conventionally controls movement through a document in small increments or small blocks of information, such as individual lines or a page of a document, for example. Moreover, if an arrow points in the upward direction, the document will be scrolled from its present position in the document toward the first page. If an arrow points in the downward position, the document will be scrolled from its present position in a document toward the last page of the document.
A slider is conventionally used to control movement through a document in larger increments than when the arrows are used. Instead of incrementing by small blocks of information, the slider typically controls movement through a document in larger blocks, increments or groups of information, such as two or more pages, for example. Therefore, when a user desires to go from the first page to the fiftieth page, the slider is usually selected and moved until page fifty is selected. The term "elevator" is also utilized to describe such a slider.
A document having multiple objects capable of running within the document such as spreadsheets, text, hotlinks, pictures, sounds, and video objects is a compound document. Within such a compound document are objects. An example of an object is a graphic or spreadsheet or a collection of text. In conventional graphical user interface window environments, a typical window will display a portion (e.g., a page) of a compound document. The size and position of the elevator within a window scroll bar corresponds to the size and position of the current viewable object in relation to the compound document. Because the compound document includes too many objects to view simultaneously, the user can position a mouse cursor over an arrow section of the window scroll bar and click a pointing device (e.g., a mouse) to scroll the document upward or downward, as appropriate.
Some objects in a compound document do not have text associated with them, and in turn cannot normally be searched. In practice, such documents are typically located with a "hit and miss" strategy. The user guesses where such objects reside in the compound document and may actually arrive close to the actual location. However, the user is forced to sequentially search the actual pages of the compound document for the specific object. It is desirable to have a reliable and efficient technique to retrieve objects in a compound document. It is also desirable to have a reliable and efficient technique for retrieving specific types of objects in a compound document. For example, a graphical user interface user may wish to specifically retrieve all graphic objects within a compound document. Thus, a need exists for an efficient method and system for retrieving specific types of objects within a compound document, such as graphic objects, spreadsheets, etc.